// 封装axios用于发送请求
import axios from 'axios'
// 引入toast 轻提示    （ main.js上已经挂载到vue原型上了 所以vue组件才能直接使用）
import { Toast } from 'vant'
// 创建新的axios实例 （因为项目很大的时候需要多次发送ajax请求）
const request = axios.create(
  {
    // 基地址
    baseURL: 'http://interview-api-t.itheima.net/h5/',
    // 最大延迟时间
    timeout: 5000
  }
)
// 添加请求拦截器
request.interceptors.request.use(function (config) {
  // 在发送请求前做的事
  return config
}, function (error) {
  // 请求错误时做的事
  return Promise.reject(error)
})

// 添加响应拦截器
request.interceptors.response.use(function (response) {
  // 数据响应前做的事
  return response.data
}, function (error) {
  // 响应错误时做的事
  if (error.response) {
    // 失败时 执行⬇
    Toast(error.response.data.message)
  }
  return Promise.reject(error)
})
// 暴露出去
export default request
